import sys
from PyQt5.QtWidgets import QHBoxLayout,QMainWindow,QApplication,QPushButton,QWidget

def onClick_Button():    #相对于屏幕的
    print('1')
    print('widget.x()=%d'%widget.x())     #窗口 横纵坐标
    print('widget.y()=%d'%widget.y())
    print('widget.width()=%d'%widget.width())  #工作区 长宽度
    print('widget.height()=%d'%widget.height())

    print('2')  #通过坐标系（包含边框的）
    print('widget.geometry().x()=%d'%widget.geometry().x())   # 工作区 横纵坐标
    print('widget.geometry().y()=%d'%widget.geometry().y())
    print('widget.geometry().width()=%d'%widget.geometry().width())   # 工作区纵坐标
    print('widget.geometry().height()=%d'%widget.geometry().height())

    print('3')  #与1一样
    print('widget.frameGeometry().x()=%d'%widget.frameGeometry().x())    # 窗口横纵坐标
    print('widget.frameGeometry().y()=%d'%widget.frameGeometry().y())
    print('widget.frameGeometry().width()=%d'%widget.frameGeometry().width())  #窗口 长宽度
    print('widget.frameGeometry().height()=%d'%widget.frameGeometry().height())

#面向过程写法
app = QApplication(sys.argv)

widget = QWidget()
btn = QPushButton(widget)
btn.setText('按钮')
btn.clicked.connect(onClick_Button);
btn.move(24,52)

widget.resize(300,240)
widget.move(700,400)
widget.setWindowTitle('屏幕坐标系')
widget.show()

#进入事件循环
sys.exit(app.exec_())

